package com.neu.demo.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.neu.common.annotation.Excel;
import com.neu.common.core.domain.BaseEntity;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * 【请填写功能名称】对象 package
 * 
 * @author liningning
 * @date 2025-09-29
 */
@ApiModel("【请填写功能名称】")
public class Package extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 套餐ID */
    @ApiModelProperty("套餐ID")
    private Long packageId;

    /** 套餐名称 */
    @ApiModelProperty("套餐名称")
    @Excel(name = "套餐名称")
    private String packageName;

    /** 套餐说明 */
    @ApiModelProperty("套餐说明")
    @Excel(name = "套餐说明")
    private String packageDescription;

    /** 套餐总价 */
    @ApiModelProperty("套餐总价")
    @Excel(name = "套餐总价")
    private BigDecimal packagePrice;

    /** 有效期截止日期 */
    @ApiModelProperty(value="有效期截止日期",example = "2021-09-10")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期截止日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date packageValidity;

    /** 宣传图片路径 */
    @ApiModelProperty("宣传图片路径")
    @Excel(name = "宣传图片路径")
    private String packageImage;

    /** 状态 (0-无效, 1-有效) */
    @ApiModelProperty("状态 (0-无效, 1-有效)")
    @Excel(name = "状态 (0-无效, 1-有效)")
    private Integer status;

    public void setPackageId(Long packageId) 
    {
        this.packageId = packageId;
    }

    public Long getPackageId() 
    {
        return packageId;
    }
    public void setPackageName(String packageName) 
    {
        this.packageName = packageName;
    }

    public String getPackageName() 
    {
        return packageName;
    }
    public void setPackageDescription(String packageDescription) 
    {
        this.packageDescription = packageDescription;
    }

    public String getPackageDescription() 
    {
        return packageDescription;
    }
    public void setPackagePrice(BigDecimal packagePrice) 
    {
        this.packagePrice = packagePrice;
    }

    public BigDecimal getPackagePrice() 
    {
        return packagePrice;
    }
    public void setPackageValidity(Date packageValidity) 
    {
        this.packageValidity = packageValidity;
    }

    public Date getPackageValidity() 
    {
        return packageValidity;
    }
    public void setPackageImage(String packageImage) 
    {
        this.packageImage = packageImage;
    }

    public String getPackageImage() 
    {
        return packageImage;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("packageId", getPackageId())
            .append("packageName", getPackageName())
            .append("packageDescription", getPackageDescription())
            .append("packagePrice", getPackagePrice())
            .append("packageValidity", getPackageValidity())
            .append("packageImage", getPackageImage())
            .append("status", getStatus())
            .toString();
    }
}
